|
RAIS
3.2
|
00001 00028 using System; 00029 using System.Data; 00030 using System.Configuration; 00031 using System.Collections; 00032 using System.Collections.Generic; 00033 using System.Web; 00034 using System.Web.Security; 00035 using System.Web.UI; 00036 using System.Web.UI.HtmlControls; 00037 using System.Web.UI.WebControls; 00038 using System.Web.UI.WebControls.WebParts; 00039 00040 using RAIS.UI.SpecificMasks.Controls; 00041 using RAIS.Common.DynamicMaskManagement; 00042 using RAIS.Common.TableManagement; 00043 using RAIS.UI.Common; 00044 using RAIS.Common.UserManagement; 00045 00046 namespace RAIS.UI.SpecificMasks.Dynamic_Masks 00047 { 00051 public partial class SingleRowMaskWithList : System.Web.UI.Page 00052 { 00053 //********************************************************************* 00054 #region Fields 00055 00058 DynamicMaskData dynamicMaskData; 00059 #endregion 00060 //********************************************************************* 00061 #region Properties 00062 00065 protected int MaskID 00066 { 00067 get 00068 { 00069 return (Request[Constants.MASK_ID_PARAMETER_NAME] == null) 00070 ? 0 00071 : int.Parse(Request[Constants.MASK_ID_PARAMETER_NAME]); 00072 } 00073 } 00077 protected int TabID 00078 { 00079 get 00080 { 00081 return (Request[Constants.TAB_ID_PARAMETER_NAME] == null) 00082 ? 0 00083 : int.Parse(Request[Constants.TAB_ID_PARAMETER_NAME]); 00084 } 00085 } 00089 protected int ParentID 00090 { 00091 get 00092 { 00093 return (Request[Constants.PARENT_ID_PARAMETER_NAME] == null) 00094 ? 0 00095 : int.Parse(Request[Constants.PARENT_ID_PARAMETER_NAME]); 00096 } 00097 } 00101 protected int RowID 00102 { 00103 get 00104 { 00105 return (this.LBLlist.SelectedItem == null) 00106 ? 0 00107 : int.Parse(this.LBLlist.SelectedItem.Value); 00108 } 00109 } 00113 protected bool IsAddRow 00114 { 00115 get 00116 { 00117 return (Request[Constants.ADD_ROW_FORM_MODE_PARAMETER_NAME] == "True") 00118 ? true 00119 : false; 00120 } 00121 } 00125 protected bool IsNewRow 00126 { 00127 get 00128 { 00129 return (this.CurrentFormMode == DynamicMaskManagement.FormMode.Add); 00130 } 00131 } 00135 protected string SuccessMessage 00136 { 00137 get 00138 { 00139 if (this.Session[UI.Common.Constants.SUCCESS_MESSAGE_TAG] == null) 00140 return string.Empty; 00141 else 00142 return this.Session[UI.Common.Constants.SUCCESS_MESSAGE_TAG].ToString(); 00143 } 00144 set { this.Session[UI.Common.Constants.SUCCESS_MESSAGE_TAG] = value; } 00145 } 00149 protected DynamicMaskManagement.FormMode CurrentFormMode 00150 { 00151 get 00152 { 00153 return (DynamicMaskManagement.FormMode)(ViewState[Constants.CURRENT_FORM_MODE_TAG]); 00154 } 00155 set 00156 { 00157 ViewState.Add(Constants.CURRENT_FORM_MODE_TAG, value); 00158 } 00159 } 00163 protected UserData CurrentUser 00164 { 00165 get { return (UserData)this.Session[UI.Common.Constants.CURRENT_USER_TAG];} 00166 } 00170 protected Facility SelectedFacility 00171 { 00172 get { return (Facility)this.Session[UI.Common.Constants.SELECTED_FACILITY_TAG]; } 00173 set { this.Session[UI.Common.Constants.SELECTED_FACILITY_TAG] = value; } 00174 } 00178 protected Department SelectedDepartment 00179 { 00180 get { return (Department)this.Session[UI.Common.Constants.SELECTED_DEPARTMENT_TAG]; } 00181 set { this.Session[UI.Common.Constants.SELECTED_DEPARTMENT_TAG] = value; } 00182 } 00186 protected int CurrentNameListIndex 00187 { 00188 get 00189 { 00190 return (int)(ViewState[Constants.CURRENT_NAME_LIST_INDEX_TAG]); 00191 } 00192 set 00193 { 00194 ViewState.Add(Constants.CURRENT_NAME_LIST_INDEX_TAG, value); 00195 } 00196 } 00200 protected bool ShowHidden 00201 { 00202 get 00203 { 00204 //if (this.Session[UI.Common.Constants.SHOW_HIDDEN_STATE_TAG] != null) 00205 // return (bool)this.Session[UI.Common.Constants.SHOW_HIDDEN_STATE_TAG]; 00206 //else 00207 // return false; 00208 return UI.Common.PageManagement.GetShowProtectors(this) 00209 || UI.Common.PageManagement.GetShowEvaluators(this); 00210 } 00211 set 00212 { 00213 this.Session[UI.Common.Constants.SHOW_HIDDEN_STATE_TAG] = value; 00214 } 00215 } 00219 int ValidationMessageID 00220 { 00221 get 00222 { 00223 if (this.Session[UI.Common.Constants.VALIDATION_MESSAGE_ID_TAG] != null) 00224 return (int)this.Session[UI.Common.Constants.VALIDATION_MESSAGE_ID_TAG]; 00225 else 00226 return 0; 00227 } 00228 } 00229 #endregion 00230 //********************************************************************* 00231 #region Event handlers 00232 protected void Page_PreLoad(object sender, EventArgs e) 00233 { 00234 RAIS.UI.Common.PageManagement.TrimTextBoxValues(this); 00235 } 00242 protected void Page_Load(object sender, EventArgs e) 00243 { 00244 this.Response.Cache.SetNoStore(); 00245 if (this.CurrentUser == null) 00246 UI.Common.AccessManagement.SignOut(this); 00247 00248 // Set Current Mode 00249 if (!IsPostBack) 00250 { 00251 this.CurrentNameListIndex = 0; 00252 if (this.IsAddRow) 00253 this.CurrentFormMode = DynamicMaskManagement.FormMode.Add; 00254 else 00255 this.CurrentFormMode = DynamicMaskManagement.FormMode.View; 00256 00257 if (!string.IsNullOrEmpty(this.SuccessMessage)) 00258 { 00259 RAIS.UI.Common.MessageDisplay.DisplayReturnMessage(this.LBLresult, 00260 this.SuccessMessage, 00261 true); 00262 this.LBLresult.Text = this.SuccessMessage; 00263 this.SuccessMessage = string.Empty; 00264 } 00265 // this.LBTNmessagebox.Visible = !(this.CurrentUser.FunctionalRole.Type == FunctionRole.FunctionRoleType.Guest); 00266 //this.CBshowHidden.Visible = 00267 // (this.CurrentUser.FunctionalRole.Type == FunctionRole.FunctionRoleType.Administrator); 00268 //this.CBshowHidden.Checked = this.ShowHidden; 00269 } 00270 00271 // Get DynamicMaskData 00272 this.dynamicMaskData = DynamicMaskManagement.GetDynamicMaskData( 00273 this.MaskID, this.TabID, this.ParentID, this.CurrentUser, this.IsNewRow); 00274 // Get saved in session validation message ID 00275 this.dynamicMaskData.ValidationMessageID = this.ValidationMessageID; 00276 00277 UI.Common.DynamicMaskManagement.SetPreselectedFilter(this.dynamicMaskData, this.SelectedFacility, this.SelectedDepartment); 00278 UI.Common.DynamicMaskManagement.SetPreselectedFilterText(this.dynamicMaskData, this.LBLselectedFacilityNameNoTranslation, this.LBLselectedDepartmentNameNoTranslation); 00279 00280 // Add Links 00281 UI.Common.DynamicMaskManagement.AddFormLinksControls(this.LGDFormLinks, this.dynamicMaskData, this.CurrentFormMode, this.Anchor_OnClick); 00282 00283 // Initialize single field ListBox 00284 UI.Common.DynamicMaskManagement.InitializeNameList(this.LBLlist, this.dynamicMaskData, this.CurrentFormMode, this.CurrentNameListIndex); 00285 00286 // Get Current Row Fields Values 00287 this.dynamicMaskData.CurrentRowValues = 00288 UI.Common.DynamicMaskManagement.GetCurrentRowFieldsValues(this.dynamicMaskData, this.ParentID, this.RowID); 00289 00290 // Create New Record in Add mode 00291 if (this.CurrentFormMode == DynamicMaskManagement.FormMode.Add) 00292 { 00293 string returnMessage = ""; 00294 UI.Common.DynamicMaskManagement.CreateNewRecord(this.dynamicMaskData); 00295 UI.Common.DynamicMaskManagement.SetFacilityFieldPreselectedValue(this.dynamicMaskData); 00296 UI.Common.DynamicMaskManagement.GetLookupValues(this.dynamicMaskData,ref returnMessage); 00297 UI.Common.DynamicMaskManagement.SetDepartmentFieldPreselectedValue(this.dynamicMaskData); 00298 } 00299 00300 // Add Field Controlls 00301 DynamicMaskControlsManagement.AddFieldControls(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues, 1, this.DDLWithChild_OnSelectedIndexChanged); 00302 00303 if (!IsPostBack) 00304 { 00305 this.DataBind(); 00306 this.LBLusernameNoTranslation.Text = this.CurrentUser.Name; 00307 DynamicMaskControlsManagement.InitializeFieldControls(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues); 00308 00309 UI.Common.PageManagement.InitializePage(this, this.TreeView1, this.ShowHidden); 00310 00311 this.SetControlsProperties(); 00312 } 00313 else 00314 { 00315 this.LBLresult.Text = string.Empty; 00316 } 00317 00318 if (dynamicMaskData.Protector != null) 00319 { 00320 this.BTNedit.Attributes.Add("onclick", string.Format("javascript: return confirm('{0}');", dynamicMaskData.Protector.RenameMessage.Replace("'", "\\'"))); 00321 this.BTNdelete.Attributes.Add("onclick", string.Format("javascript: alert('{0}'); return false;", dynamicMaskData.Protector.DeleteMessage.Replace("'", "\\'"))); 00322 } 00323 else 00324 { 00325 this.BTNedit.Attributes.Remove("onclick"); 00326 this.BTNdelete.Attributes.Add("onclick", string.Format("javascript: return confirm('{0}');", RAIS.Common.Messages.DELETE_QUESTION.Replace("'", "\\'"))); 00327 } 00328 UI.Common.Localisation.TranslatePage(this); 00329 UI.Common.PageManagement.InitHelpMainMenu(LBTNdefault, dynamicMaskData.DynamicMask.ID); 00330 } 00337 protected void Page_Init(object sender, EventArgs e) 00338 { 00339 PageManagement.SetScrolableListBox(this.LBLlist, this, true); 00340 } 00346 protected void CBshowHidden_CheckedChanged(object sender, EventArgs e) 00347 { 00348 this.ShowHidden = CBshowHidden.Checked; 00349 UI.Common.PageManagement.InitializePage(this, this.TreeView1, this.ShowHidden); 00350 } 00357 protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e) 00358 { 00359 UI.Common.UserManagement.ProcessTreeViewOnRedirect(this.TreeView1); 00360 } 00367 protected void LBLlist_SelectedIndexChanged(object sender, EventArgs e) 00368 { 00369 DynamicMaskControlsManagement.InitializeFieldControls(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues); 00370 this.SetControlsProperties(); 00371 UI.Common.Localisation.TranslatePage(this); 00372 } 00379 protected void BTNbacktolist_Click(object sender, EventArgs e) 00380 { 00381 Response.Redirect( 00382 UI.Common.DynamicMaskManagement.GetDynamicMaskMainReference(this.dynamicMaskData, this.MaskID)); 00383 } 00390 protected void BTNadd_Click(object sender, EventArgs e) 00391 { 00392 this.CurrentNameListIndex = this.LBLlist.SelectedIndex; 00393 this.CurrentFormMode = DynamicMaskManagement.FormMode.Add; 00394 UI.Common.DynamicMaskManagement.InitializeNameList(this.LBLlist, this.dynamicMaskData, this.CurrentFormMode, this.CurrentNameListIndex); 00395 00396 UI.Common.DynamicMaskManagement.CreateNewRecord(this.dynamicMaskData); 00397 UI.Common.DynamicMaskManagement.SetFacilityFieldPreselectedValue(this.dynamicMaskData); 00398 string returnMessage = ""; 00399 UI.Common.DynamicMaskManagement.GetLookupValues(this.dynamicMaskData, ref returnMessage); 00400 00401 UI.Common.DynamicMaskManagement.SetDepartmentFieldPreselectedValue(this.dynamicMaskData); 00402 DynamicMaskControlsManagement.InitializeFieldControls(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues); 00403 // Make one more initialization to fill child DDLs if parent DDL is mandatory 00404 DynamicMaskControlsManagement.InitializeObjectFromControlsValues(this.TBLfieldsValues, this.dynamicMaskData); 00405 if(!UI.Common.DynamicMaskManagement.GetLookupValues(this.dynamicMaskData, ref returnMessage)) 00406 { 00407 BTNundo_Click(sender, e); 00408 RAIS.UI.Common.MessageDisplay.DisplayReturnMessage(this.LBLresult, 00409 returnMessage, 00410 false); 00411 return; 00412 } 00413 DynamicMaskControlsManagement.InitializeFieldControls(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues); 00414 00415 this.SetAddFormMode(); 00416 00417 UI.Common.DynamicMaskManagement.AddFormLinksControls(this.LGDFormLinks, this.dynamicMaskData, this.CurrentFormMode, this.Anchor_OnClick); 00418 UI.Common.Localisation.TranslatePage(this); 00419 } 00426 protected void BTNedit_Click(object sender, EventArgs e) 00427 { 00428 string returnMessage = ""; 00429 UI.Common.DynamicMaskManagement.GetLookupValues(this.dynamicMaskData, ref returnMessage); 00430 //UI.Common.DynamicMaskManagement.InitializeFieldControls(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues); 00431 DynamicMaskControlsManagement.InitializeFieldControls(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues); 00432 this.SetEditFormMode(); 00433 00434 UI.Common.DynamicMaskManagement.AddFormLinksControls(this.LGDFormLinks, this.dynamicMaskData, this.CurrentFormMode, this.Anchor_OnClick); 00435 UI.Common.Localisation.TranslatePage(this); 00436 } 00443 protected void BTNdelete_Click(object sender, EventArgs e) 00444 { 00445 string actionMessage = ""; 00446 bool success; 00447 00448 this.CurrentFormMode = DynamicMaskManagement.FormMode.Delete; 00449 00450 if (dynamicMaskData.NeedsValidation) 00451 { 00452 RAIS.Common.MessageManagement.Message.ModificationType mainMaskModificationType = (this.IsAddRow) 00453 ? RAIS.Common.MessageManagement.Message.ModificationType.Add 00454 : RAIS.Common.MessageManagement.Message.ModificationType.Edit; 00455 success = UI.Common.DynamicMaskManagement.SaveChanges(this.dynamicMaskData 00456 , RAIS.Common.MessageManagement.Message.ModificationType.Delete 00457 , mainMaskModificationType 00458 , ref actionMessage); 00459 } 00460 else 00461 { 00462 success = UI.Common.DynamicMaskManagement.DeleteRecord(this.dynamicMaskData, ref actionMessage); 00463 } 00464 RAIS.UI.Common.MessageDisplay.DisplayReturnMessage(this.LBLresult, 00465 actionMessage, 00466 success); 00467 00468 UI.Common.DynamicMaskManagement.GetSingleListFieldValues(this.dynamicMaskData); 00469 UI.Common.DynamicMaskManagement.InitializeNameList(this.LBLlist, this.dynamicMaskData, this.CurrentFormMode, this.CurrentNameListIndex); 00470 this.dynamicMaskData.CurrentRowValues = 00471 UI.Common.DynamicMaskManagement.GetCurrentRowFieldsValues(this.dynamicMaskData, this.ParentID, this.RowID); 00472 //UI.Common.DynamicMaskManagement.InitializeFieldControls(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues); 00473 DynamicMaskControlsManagement.InitializeFieldControls(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues); 00474 this.SetViewFormMode(); 00475 UI.Common.Localisation.TranslatePage(this); 00476 } 00483 protected void BTNundo_Click(object sender, EventArgs e) 00484 { 00485 if (this.dynamicMaskData.IsHistoryMask && this.IsAddRow) 00486 { 00487 this.Response.Redirect( 00488 UI.Common.DynamicMaskManagement.GetDynamicMaskMainReference( 00489 this.dynamicMaskData, this.MaskID)); 00490 } 00491 else 00492 { 00493 if (this.CurrentFormMode == DynamicMaskManagement.FormMode.Add) 00494 { 00495 this.CurrentFormMode = DynamicMaskManagement.FormMode.UndoAdd; 00496 this.dynamicMaskData.IsNewRow = false; 00497 } 00498 else 00499 this.CurrentFormMode = DynamicMaskManagement.FormMode.View; 00500 00501 UI.Common.DynamicMaskManagement.GetSingleListFieldValues(this.dynamicMaskData); 00502 UI.Common.DynamicMaskManagement.InitializeNameList(this.LBLlist, this.dynamicMaskData, this.CurrentFormMode, this.CurrentNameListIndex); 00503 this.dynamicMaskData.CurrentRowValues = 00504 UI.Common.DynamicMaskManagement.GetCurrentRowFieldsValues(this.dynamicMaskData, this.ParentID, this.RowID); 00505 DynamicMaskControlsManagement.InitializeFieldControls(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues); 00506 this.SetViewFormMode(); 00507 00508 UI.Common.DynamicMaskManagement.AddFormLinksControls(this.LGDFormLinks, this.dynamicMaskData, this.CurrentFormMode, this.Anchor_OnClick); 00509 } 00510 UI.Common.Localisation.TranslatePage(this); 00511 } 00518 protected void BTNapply_Click(object sender, EventArgs e) 00519 { 00520 if (this.IsValid) 00521 { 00522 string actionMessage = string.Empty; 00523 bool success = true; 00524 00525 DynamicMaskControlsManagement.InitializeObjectFromControlsValues(this.TBLfieldsValues, this.dynamicMaskData); 00526 00527 RAIS.Common.MessageManagement.Message.ModificationType currentModificationType = (this.CurrentFormMode == DynamicMaskManagement.FormMode.Add) 00528 ? RAIS.Common.MessageManagement.Message.ModificationType.Add 00529 : RAIS.Common.MessageManagement.Message.ModificationType.Edit; 00530 RAIS.Common.MessageManagement.Message.ModificationType mainMaskModificationType = (this.IsAddRow) 00531 ? RAIS.Common.MessageManagement.Message.ModificationType.Add 00532 : RAIS.Common.MessageManagement.Message.ModificationType.Edit; 00533 00534 if (HDNApplyPhase.Value == RAIS.UI.Common.DynamicMaskManagement.ApplyPhase.Check.ToString()) 00535 { 00536 success = UI.Common.DynamicMaskManagement.ValidateConsistencyChecks(this.dynamicMaskData, ref actionMessage); 00537 if (success) 00538 { 00539 HDNApplyPhase.Value = RAIS.UI.Common.DynamicMaskManagement.ApplyPhase.Apply.ToString(); 00540 } 00541 else 00542 { 00543 this.HDNConsistencyCheckResult.Value = string.Format(RAIS.Common.Messages.CONSISTENCY_CHECK, actionMessage); 00544 } 00545 } 00546 00547 if (HDNApplyPhase.Value == RAIS.UI.Common.DynamicMaskManagement.ApplyPhase.Apply.ToString()) 00548 { 00549 HDNApplyPhase.Value = RAIS.UI.Common.DynamicMaskManagement.ApplyPhase.Check.ToString(); 00550 00551 if (this.dynamicMaskData.IsHistoryMask && this.IsAddRow) 00552 { 00553 DynamicMaskData parentDynamicMaskData = DynamicMaskManagement.GetDynamicMaskData( 00554 this.MaskID, this.TabID - 1, this.ParentID, this.CurrentUser, this.IsNewRow); 00555 parentDynamicMaskData.CurrentRowValues = 00556 UI.Common.DynamicMaskManagement.GetCurrentRowFieldsValues(parentDynamicMaskData, this.ParentID, this.RowID); 00557 UI.Common.DynamicMaskManagement.CreateNewRecord(parentDynamicMaskData); 00558 parentDynamicMaskData.CurrentRowValues = 00559 (List<FieldData>)this.Session["CurrentRowValues"]; 00560 00561 this.dynamicMaskData.ParentDynamicMaskData = parentDynamicMaskData; 00562 } 00563 00564 //if (success) 00565 success = UI.Common.DynamicMaskManagement.SaveChanges(this.dynamicMaskData 00566 , currentModificationType, mainMaskModificationType, ref actionMessage); 00567 00568 RAIS.UI.Common.MessageDisplay.DisplayReturnMessage(this.LBLresult, 00569 actionMessage, 00570 success); 00571 if (success) 00572 { 00573 if (this.dynamicMaskData.DynamicMasks.Count == 1) 00574 { 00575 // Reeead current row to get correct values for changes in multilookup field 00576 this.dynamicMaskData.CurrentRowValues = 00577 UI.Common.DynamicMaskManagement.GetCurrentRowFieldsValues(this.dynamicMaskData, this.ParentID, this.RowID); 00578 00579 // Initialize fields to format scientific and fload fields if user does not need validation 00580 // and to get current field valies if user needs validation 00581 DynamicMaskControlsManagement.InitializeFieldControls(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues); 00582 00583 this.SetViewFormMode(); 00584 UI.Common.DynamicMaskManagement.GetSingleListFieldValues(this.dynamicMaskData); 00585 UI.Common.DynamicMaskManagement.InitializeNameList(this.LBLlist, this.dynamicMaskData, this.CurrentFormMode, this.CurrentNameListIndex); 00586 00587 // Find ItemInList 00588 string keyValue = this.dynamicMaskData.CurrentRowKeyValue.ToString(); 00589 foreach (ListItem listItem in this.LBLlist.Items) 00590 { 00591 if (listItem.Value == keyValue) 00592 { 00593 listItem.Selected = true; 00594 break; 00595 } 00596 } 00597 this.SetControlsProperties(); 00598 UI.Common.DynamicMaskManagement.AddFormLinksControls(this.LGDFormLinks, this.dynamicMaskData, this.CurrentFormMode, this.Anchor_OnClick); 00599 } 00600 else 00601 { 00602 this.SuccessMessage = actionMessage; 00603 string reference = UI.Common.DynamicMaskManagement.GetDynamicMaskReference( 00604 this.dynamicMaskData, this.MaskID, this.TabID, this.dynamicMaskData.ParentID, 0, false); 00605 00606 this.Response.Redirect(reference); 00607 } 00608 } 00609 else 00610 { 00611 Page.SetFocus(this.TBLfieldsValues); 00612 } 00613 } 00614 } 00615 UI.Common.Localisation.TranslatePage(this); 00616 } 00623 protected void BTNviewLog_Click(object sender, EventArgs e) 00624 { 00625 Log_file logFile = new Log_file(); 00626 logFile.ShowHistory(this.dynamicMaskData, this); 00627 } 00634 protected void LBTNlogout_Click(object sender, EventArgs e) 00635 { 00636 UI.Common.AccessManagement.SignOut(this); 00637 } 00644 protected void DDLWithChild_OnSelectedIndexChanged(object sender, EventArgs e) 00645 { 00646 foreach (FieldData fieldData in this.dynamicMaskData.CurrentRowValues) 00647 { 00648 if (fieldData.ControlName == ((DropDownList)sender).ID) 00649 { 00650 fieldData.RaisedPostback = true; 00651 break; 00652 } 00653 } 00654 string returnMessage = ""; 00655 DynamicMaskControlsManagement.InitializeObjectFromControlsValues(this.TBLfieldsValues, this.dynamicMaskData); 00656 UI.Common.DynamicMaskManagement.GetLookupValues(this.dynamicMaskData, ref returnMessage); 00657 DynamicMaskControlsManagement.InitializeFieldControls(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues); 00658 UI.Common.Localisation.TranslatePage(this); 00659 } 00666 protected void Anchor_OnClick(object sender, EventArgs e) 00667 { 00668 Response.Redirect( 00669 UI.Common.DynamicMaskManagement.GetDynamicMaskReference( 00670 this.dynamicMaskData 00671 , sender 00672 , this.MaskID 00673 , this.ParentID 00674 , 0 00675 , this.IsAddRow)); 00676 } 00677 00678 protected void LBclearfacility_Click(object sender, EventArgs e) 00679 { 00680 this.SelectedFacility = null; 00681 this.SelectedDepartment = null; 00682 UI.Common.DynamicMaskManagement.SetPreselectedFilter(this.dynamicMaskData, this.SelectedFacility, this.SelectedDepartment); 00683 UI.Common.DynamicMaskManagement.SetPreselectedFilterText(this.dynamicMaskData, this.LBLselectedFacilityNameNoTranslation, this.LBLselectedDepartmentNameNoTranslation); 00684 this.SetControlsProperties(); 00685 } 00686 00687 protected void LBcleardepartment_Click(object sender, EventArgs e) 00688 { 00689 this.SelectedDepartment = null; 00690 UI.Common.DynamicMaskManagement.SetPreselectedFilter(this.dynamicMaskData, this.SelectedFacility, this.SelectedDepartment); 00691 UI.Common.DynamicMaskManagement.SetPreselectedFilterText(this.dynamicMaskData, this.LBLselectedFacilityNameNoTranslation, this.LBLselectedDepartmentNameNoTranslation); 00692 this.SetControlsProperties(); 00693 } 00694 #endregion 00695 //********************************************************************* 00696 #region Private methods 00697 00700 void SetViewFormMode() 00701 { 00702 this.CurrentFormMode = DynamicMaskManagement.FormMode.View; 00703 00704 this.SetControlsProperties(); 00705 } 00709 void SetEditFormMode() 00710 { 00711 this.CurrentFormMode = DynamicMaskManagement.FormMode.Edit; 00712 00713 this.SetControlsProperties(); 00714 } 00718 void SetAddFormMode() 00719 { 00720 this.CurrentFormMode = DynamicMaskManagement.FormMode.Add; 00721 00722 this.SetControlsProperties(); 00723 } 00727 void SetControlsProperties() 00728 { 00729 UserManagement.AccessRight accessRight = 00730 UI.Common.DynamicMaskManagement.GetPageAccessRights(this, this.dynamicMaskData, this.MaskID); 00731 if (accessRight != null) 00732 { 00733 BTNadd.Visible = accessRight.Add; 00734 BTNedit.Visible = accessRight.Edit; 00735 BTNdelete.Visible = accessRight.Delete; 00736 BTNviewLog.Visible = accessRight.Add || accessRight.Edit || accessRight.Delete; 00737 } 00738 00739 LBLselectedFacility.Visible = this.dynamicMaskData.IsMultipaged || 00740 ((string)this.Session[UI.Common.Constants.SELECTED_CATEGORY_TAG] == RAIS.Common.Constants.CATEGORY_NAME_INPUT); 00741 LBLselectedFacilityNameNoTranslation.Visible = this.dynamicMaskData.IsMultipaged || 00742 ((string)this.Session[UI.Common.Constants.SELECTED_CATEGORY_TAG] == RAIS.Common.Constants.CATEGORY_NAME_INPUT); 00743 LBclearfacility.Visible = (this.dynamicMaskData.IsMultipaged || 00744 ((string)this.Session[UI.Common.Constants.SELECTED_CATEGORY_TAG] == RAIS.Common.Constants.CATEGORY_NAME_INPUT)) 00745 && this.SelectedFacility != null; 00746 LBLselectedDepartment.Visible = this.dynamicMaskData.IsMultipaged || 00747 ((string)this.Session[UI.Common.Constants.SELECTED_CATEGORY_TAG] == RAIS.Common.Constants.CATEGORY_NAME_INPUT); 00748 LBLselectedDepartmentNameNoTranslation.Visible = this.dynamicMaskData.IsMultipaged || 00749 ((string)this.Session[UI.Common.Constants.SELECTED_CATEGORY_TAG] == RAIS.Common.Constants.CATEGORY_NAME_INPUT); 00750 LBcleardepartment.Visible = (this.dynamicMaskData.IsMultipaged || 00751 ((string)this.Session[UI.Common.Constants.SELECTED_CATEGORY_TAG] == RAIS.Common.Constants.CATEGORY_NAME_INPUT)) 00752 && this.SelectedDepartment != null; 00753 00754 BTNbacktolist.Visible = this.dynamicMaskData.IsMultipaged; 00755 00756 bool controlsEnabled = false; 00757 00758 switch (this.CurrentFormMode) 00759 { 00760 case DynamicMaskManagement.FormMode.View: 00761 this.BTNbacktolist.Enabled = true; 00762 00763 if (!this.HasVisibleControlsOnForm) // 15.08.2011 No visible control on the form / no visible field in the table 00764 this.BTNadd.Enabled = false; 00765 else 00766 this.BTNadd.Enabled = 00767 !( 00768 this.dynamicMaskData.DynamicMask.Table.Name == RAIS.Common.Constants.FACILITY_HISTORY_TABLE_NAME 00769 || this.dynamicMaskData.DynamicMask.Table.Name == RAIS.Common.Constants.DEPARTMENT_HISTORY_TABLE_NAME 00770 ); 00771 00772 this.BTNedit.Enabled = (LBLlist.SelectedIndex != -1); 00773 this.BTNdelete.Enabled = (LBLlist.SelectedIndex != -1 00774 && !(dynamicMaskData.DynamicMask.Table.HistoryTable && LBLlist.Items.Count < 2)); 00775 this.BTNviewLog.Enabled = (LBLlist.SelectedIndex != -1) 00776 && !( 00777 this.dynamicMaskData.DynamicMask.Table.Name == RAIS.Common.Constants.FACILITY_HISTORY_TABLE_NAME 00778 || this.dynamicMaskData.DynamicMask.Table.Name == RAIS.Common.Constants.DEPARTMENT_HISTORY_TABLE_NAME 00779 ); 00780 this.LBLlist.Enabled = true; 00781 00782 this.BTNundo.Enabled = false; 00783 this.BTNapply.Enabled = false; 00784 00785 this.TreeView1.Enabled = true; 00786 this.LBTNadmin.Disabled = !UI.Common.UserManagement.AccessToCategoryAllowed(RAIS.Common.Constants.CATEGORY_NAME_ADMINISTRATION, this); 00787 this.LBTNregsys.Disabled = !UI.Common.UserManagement.AccessToCategoryAllowed(RAIS.Common.Constants.CATEGORY_NAME_REGULATORY_SYSTEM, this); 00788 this.LBTNinput.Disabled = !UI.Common.UserManagement.AccessToCategoryAllowed(RAIS.Common.Constants.CATEGORY_NAME_INPUT, this); 00789 this.LBTNquery.Disabled = !UI.Common.UserManagement.AccessToCategoryAllowed(RAIS.Common.Constants.CATEGORY_NAME_QUERY, this); 00790 this.LBTNstatistics.Disabled = !UI.Common.UserManagement.AccessToCategoryAllowed(RAIS.Common.Constants.CATEGORY_NAME_STATISTICS, this); 00791 this.LBTNtools.Disabled = !UI.Common.UserManagement.AccessToCategoryAllowed(RAIS.Common.Constants.CATEGORY_NAME_TOOLS, this); 00792 this.LBTNmessagebox.Disabled = false; 00793 this.LBTNdefault.Disabled = false; 00794 this.LBTNlogout.Disabled = false; 00795 00796 Page.SetFocus(this.LBLlist); 00797 00798 break; 00799 case DynamicMaskManagement.FormMode.Edit: 00800 case DynamicMaskManagement.FormMode.Add: 00801 this.BTNbacktolist.Enabled = false; 00802 this.BTNadd.Enabled = false; 00803 this.BTNedit.Enabled = false; 00804 this.BTNdelete.Enabled = false; 00805 this.BTNviewLog.Enabled = false; 00806 this.LBLlist.Enabled = false; 00807 00808 this.TreeView1.Enabled = false; 00809 this.LBTNadmin.Disabled = true; 00810 this.LBTNregsys.Disabled = true; 00811 this.LBTNinput.Disabled = true; 00812 this.LBTNquery.Disabled = true; 00813 this.LBTNstatistics.Disabled = true; 00814 this.LBTNtools.Disabled = true; 00815 this.LBTNmessagebox.Disabled = true; 00816 this.LBTNdefault.Disabled = false; 00817 this.LBTNlogout.Disabled = true; 00818 00819 this.BTNundo.Enabled = true; 00820 this.BTNapply.Enabled = true; 00821 00822 controlsEnabled = true; 00823 00824 Page.SetFocus(this.TBLfieldsValues); 00825 00826 break; 00827 } 00828 00829 DynamicMaskControlsManagement.SetFieldControlsEnabled(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues, controlsEnabled); 00830 00831 switch ((string)this.Session[UI.Common.Constants.SELECTED_CATEGORY_TAG]) 00832 { 00833 case RAIS.Common.Constants.CATEGORY_NAME_REGULATORY_SYSTEM: 00834 this.LBLregsys.ForeColor = RAIS.UI.Common.Constants.COLOR_OF_MENU_BAR_TEXT_HIGHLIGHT; 00835 break; 00836 case RAIS.Common.Constants.CATEGORY_NAME_INPUT: 00837 this.LBLinput.ForeColor = RAIS.UI.Common.Constants.COLOR_OF_MENU_BAR_TEXT_HIGHLIGHT; 00838 break; 00839 } 00840 } 00841 00842 protected bool HasVisibleControlsOnForm 00843 { 00844 get 00845 { 00846 bool result = false; 00847 foreach (FieldData fieldData in this.dynamicMaskData.CurrentRowValues) 00848 { 00849 if (fieldData.Field.VisibleOnForms) 00850 result = true; 00851 } 00852 return result; 00853 } 00854 } 00855 00856 #endregion 00857 } 00858 }